import request from '@/config/axios'

// 车辆信息 VO
export interface VehicleVO {
  name: string // 车辆名称
  plateNumber: string // 车牌号码
  purchaseDate: Date // 购买日期
  purchasePrice: number // 购买价格
  color: string // 车身颜色
  seatCount: number // 座位数
  fuelConsumption: number // 油耗
  engineNumber: string // 发动机号
  vin: string // 车架号(VIN)
  inspectionExpiryDate: Date // 车审到期日期
  insuranceExpiryDate: Date // 保险到期日期
  initialMileage: number // 初始里程数（公里）
  driverId: number // 驾驶员ID（关联员工表）
  remark: string // 备注信息
}

// 车辆信息 API
export const VehicleApi = {
  // 查询车辆信息分页
  getVehiclePage: async (params: any) => {
    return await request.get({ url: `/oa/vehicle/page`, params })
  },

  // 查询车辆信息详情
  getVehicle: async (id: number) => {
    return await request.get({ url: `/oa/vehicle/get?id=` + id })
  },

  // 查询当前里程数
  getCurrentMileage: async (id: number) => {
    return await request.get({ url: `/oa/vehicle/getCurrentMileage?id=` + id })
  },

  // 新增车辆信息
  createVehicle: async (data: VehicleVO) => {
    return await request.post({ url: `/oa/vehicle/create`, data })
  },

  // 修改车辆信息
  updateVehicle: async (data: VehicleVO) => {
    return await request.put({ url: `/oa/vehicle/update`, data })
  },

  // 删除车辆信息
  deleteVehicle: async (id: number) => {
    return await request.delete({ url: `/oa/vehicle/delete?id=` + id })
  },

  // 导出车辆信息 Excel
  exportVehicle: async (params) => {
    return await request.download({ url: `/oa/vehicle/export-excel`, params })
  }
}
